package com.alibaba.service;

import com.alibaba.model.entity.Product;
import java.util.List;

/**
 * 产品服务接口，定义产品相关的常用操作方法。
 */
public interface ProductService {

    /**
     * 查询所有产品信息
     * @return 产品列表
     */
    List<Product> listAllProducts();

    /**
     * 查询热门产品信息（如按浏览量降序，取前N个）
     * @param topN 返回前N个热门产品
     * @return 热门产品列表
     */
    List<Product> listHotProducts(int topN);

    /**
     * 根据产品ID查询产品详情
     * @param productId 产品ID
     * @return 产品详情，若不存在返回null
     */
    Product getProductById(Long productId);

    /**
     * 新增产品
     * @param product 产品实体
     * @return 是否添加成功
     */
    boolean addProduct(Product product);

    /**
     * 更新产品信息
     * @param product 产品实体
     * @return 是否更新成功
     */
    boolean updateProduct(Product product);

    /**
     * 删��产品
     * @param productId 产品ID
     * @return 是否删除成功
     */
    boolean deleteProduct(Long productId);

}
